﻿// -------------------------------------------------------------------------------------------------
// <copyright file="Actor.cs" company="HeterogeneousComputing.com">
// Creative Commons Attribution-ShareAlike 3.0 Unported License
// </copyright>
//
// <author>Jock</author>
//
// <date>05/08/2011</date>
//
// <summary>Implements the actor class</summary>
// -------------------------------------------------------------------------------------------------
namespace TheTVDBScraper
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Runtime.Serialization; 
    using System.Text;

    /// -------------------------------------------------------------------------------------------------
    /// <summary>   The Job of an Actor within a TVSeries.  </summary>
    /// <remarks>    The class author was Jock, on the 05/08/2011. </remarks>
    /// -------------------------------------------------------------------------------------------------
    [DataContract(Name = "Actor",
        Namespace = "http://www.heterogeneouscomputing.com/TheTVDBScraper", IsReference = true)]
    public class Actor : JobRole
    {
        #region Private Fields
            /// <summary> The unique identifier for this Actor on TheTVDB. </summary>
            private string id;

            /// <summary> The URL of the image for this Actor on TheTVDB. </summary>
            private string imageUrl;
        #endregion

        #region Construtors

            /// -------------------------------------------------------------------------------------------------
            /// <summary>   Initializes a new instance of the Actor class. </summary>
            /// <param name="person">   The person. </param>
            /// -------------------------------------------------------------------------------------------------
            public Actor(Person person)
                : base(person)
            {
            }

            /// -------------------------------------------------------------------------------------------------
            /// <summary>   Initializes a new instance of the Actor class. </summary>
            /// <param name="personName">   Name of the person. </param>
            /// -------------------------------------------------------------------------------------------------
            public Actor(string personName)
                : base(personName)
            {
            }

            /// -------------------------------------------------------------------------------------------------
            /// <summary>   Initializes a new instance of the Actor class. </summary>
            /// -------------------------------------------------------------------------------------------------
            public Actor()
            {
            }
         #endregion

        #region Public Properties

            /// -------------------------------------------------------------------------------------------------
            /// <summary>   Gets or sets the unique identifier for this Actor on TheTVDB. </summary>
            /// <value> The identifier. </value>
            /// -------------------------------------------------------------------------------------------------
            [DataMember(EmitDefaultValue = false)]
            public string Id
            {
                get
                {
                    return this.id;
                }

                set
                {
                    this.id = value;
                }
            }

            /// -------------------------------------------------------------------------------------------------
            /// <summary>   Gets or sets URL of the image for this Actor on TheTVDB. </summary>
            /// <value> The image url. </value>
            /// -------------------------------------------------------------------------------------------------
            [DataMember(EmitDefaultValue = false)]
            public string ImageURL
            {
                get
                {
                    return this.imageUrl;
                }

                set
                {
                    this.imageUrl = value;
                }
            }
        #endregion
    }
}

/// -------------------------------------------------------------------------------------------------
// End of Actor.cs
/// -------------------------------------------------------------------------------------------------
